package cn.jellybmedia.basic.utils;

import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;

import java.io.IOException;

/**======================================================================================
* @Title:
* @Description: 短信发送工具栏
* @Author: Mr.Zhang
* @Version: 1.0
* @Date:  2022/7/5 11:23
* @Parameters:
* @Return
======================================================================================*/
public class SmsUtils {

    /**======================================================================================
    * @Title: sendMessage
    * @Description: 发送短信的方法
    * @Author: Mr.Zhang
    * @Version: 1.0
    * @Date:  2022/7/5 11:26
    * @Parameters: [phone, message]
    * phone:给哪个人发短信,可以为多个,逗号分割
    * message:发送的信息内容
    * @Return void
    ======================================================================================*/
    public static void sendMessage(String phone,String message){

        try {
            HttpClient client = new HttpClient();
            PostMethod post = new PostMethod("https://utf8api.smschinese.cn/");
            post.addRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=utf-8");//在头文件中设置转码
            NameValuePair[] data ={ new NameValuePair("Uid", "ChuengXu"),new NameValuePair("Key", "6B34956FB334A21040296C3BC39D5978"),new NameValuePair("smsMob",phone),new NameValuePair("smsText",message)};
            post.setRequestBody(data);

            client.executeMethod(post);
            Header[] headers = post.getResponseHeaders();
            int statusCode = post.getStatusCode();
            System.out.println("statusCode:"+statusCode); //HTTP状态码
            for(Header h : headers){
                System.out.println(h.toString());
            }
            String result = new String(post.getResponseBodyAsString().getBytes("utf-8"));
            System.out.println(result);  //打印返回消息状态

            post.releaseConnection();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

}